package com.qc.sys.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.qc.sys.common.DataGridView;
import com.qc.sys.common.ResultObj;
import com.qc.sys.entity.SysMenu;
import com.qc.sys.entity.SysMenu;
import com.qc.sys.vo.MenuVo;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * (SysMenu)表服务接口
 *
 * @author AltmanQccc
 * @since 2020-08-26 10:30:22
 */
@Service
public interface SysMenuService extends IService<SysMenu> {

    /**
     * 全查询菜单
     * */
    List<SysMenu> queryAllMenuForList();

    /**
     * 根据用户id查询菜单
     * */
    List<SysMenu> queryAllMenuForListByUserId(Integer id);

    DataGridView loadAllMenu(MenuVo menuVo);

    Integer queryMenuMaxOrderNum();

    ResultObj saveMenu(SysMenu menu);

    DataGridView queryMenuById(Integer id);

    ResultObj updateMenu(SysMenu menu);

    Integer queryMenuChildrenCountById(Integer id);

    ResultObj deleteMenu(Integer id);

    List<String> queryPermissionCodesByUserId(Integer id);
}